Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Розв'язування на С задач, які використовують файли для вводу та виводу даних

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2014
Тип роботи:
Лабораторна робота
Предмет:
Основи алгоритмізації та програмування

Частина тексту файла

Міністерство освіти і науки Національний університет “Львівська політехніка” Кафедра ЕОМ / Звіт з лабораторної роботи № 7 з дисципліни: “Основи алгоритмізації та програмування” на тему: “Розв'язування на С задач, які використовують файли для вводу та виводу даних” Мета лабораторної роботи Познайомитися iз засобами файлового вводу та виводу в мовi програмування С. Теоретичні відомості Файловий ввід та вивід З точки зору програми на мові С всі типи файлів при виконанні операцій вводу та виводу розглядаються як потік логічних даних незалежно від того чи програма читає (записує) символ чи байт, чи рядок даних, чи блок даних заданого розміру. Потоки в С можуть бути або текстовими потоками або бінарними потоками. При відкриванні файла з допомогою функції fopen( ) створює новий потік, який існує до тих пір доки не буде закритий з допомогою функції fclose( ). В мові С виконання операцій вводу-виводу делегується виконавчому середовищу (операційній системі) у якому виконується програма. Таким чином потік є каналом через який дані можуть передаватися з виконавчого середовища в програму чи з програми у виконавче середовище. Операції вводу-виводу з пристроями виконуються таким самим чином як і з файлами. Текстовий потік транспортує символи тексту, які складаються з рядків (розділені на рядки). Рядки тексту складаються з послідовності символів, які завершуються символом нового рядка (керуючим символом). Рядок може бути і порожнім. Бінарний потік є послідовністю байтів, які жодним чином не інтерпретуються і передаються без модифікації. У бінарному потоці не виділяють жодних керуючих символів. Дані записані в бінарний потік можуть бути знову прочитані у такими ж як були записані. Файли в С представляються послідовністю байтів. Функція fopen( ) зв'язує файл з потоком і ініціалізує об'єкт типу FILE, який містить всю необхідну інформацію для управління потоком. Ця інформація включає вказівник на використовуваний буфер, індикатор поточної позиції у файлі та інші. Функція fopen( ) повертає вказівник на об'єкт FILE потоку, який пов'язаний з відкритим файлом. Після відкриття файла з ним можна виконувати функції, які виконують читання-запис даних. Ці функції мають вказівник на об'єкт FILE як один із аргументів. Прототип стандартної бібліотечної функції fopen( ) наступний FILE *fopen( const char * filename, const char * mode ); Функція відкриває файл з іменем, який задається рядком filename. Параметр filename може містити і частину, яка специфікує каталог. Другий аргумент, mode, також є рядком і задає режим доступу. Цей аргумент вказує, які операції допустимі з файлом. Найважливішими є наступні значення цього аргументу: "rb" - читання з бінарного потоку "wb" - запис в бінарний потік "rt" - читання з текстового потоку "wt" - запис в текстовий потік Для закривання фала використовується функція fclose( ). Її прототип: int fclose( FILE *fp ); Функція скидає дані, якщо вони ще залишилися в буфері в файл, закриває файл і звільняє пам'ять, яку займали буфери вводу-виводу. Функція fclose( ) повертає нуль при успішному завершенні чи EOF, якщо станеться помилка. Для читання символів використовується функція int fgetc( FILE * fp ); Функція fgetc( ) читає символ з вхідного потоку на який посилається fp. Вона повертає прочитаний символ чи EOF, якщо станеться помилка. Запис окремого символу в потік здійснюється з допомогою функції int fputc( int c, FILE *fp ); Функція fputc( ) записує символ, який задається аргументом c у вихідний потік на який посилається fp. Вона повертає записаний символ чи EOF, якщо станеться помилка. Читання рядка з потоку виконується функцією char *fgets( char *buf, int n, FILE *fp ); Функція fgets( ) читає до n - 1 символів з вхідного потоку, на який посилається fp в буфер, який адресується buf, додаючи нуль-символ для завершення рядка. Якщо функція виявить символ нового рядка чи кінець файла перед тим як прочитає максимальну кількість символів, то лише вони будуть прочитані в буфе...
Антиботан аватар за замовчуванням

27.03.2016 18:03

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини